// js表示页面加载完成执行里面的代码
$(function () {
    // layui的js，表示页面加载完成执行里面的代码
    layui.use('form', function () {
        // 得到表单form
        let form = layui.form;

        // layui封装的弹出框
        // layer.msg("aaaaaaaaaa",{icon:2});
        // layer.msg('玩命卖萌中', function(){
        //   //关闭后的操作
        //   });
        //监听提交,监听就是事件，就是方法
        //监听按钮点击事件
        form.on('submit(login)', function (data) {
            // alert(888)
            // console.log(data);
            // console.log(data.field);
            //我们需要拿到用户输入的数据，
            // 需要根据用户名和密码到数据库里面查询是否有权限登录
            //data.field 得到数据(对象){key:"value",key:"value"}
            //json和对象之间的区别？{"key":"value","key":"value"}
            // JSON.stringify(data.field) 将得到的数据转换位string字符串
            // layer.msg(JSON.stringify(data.field), function () {
            //跳转页面
            // window.location.href = '/html/index.html';
            //    得到数据，应该传递到后台，后台通过逻辑判断返回数据告诉前端是否有权限登录
            //    后台判断：1，验证码是否正确。2用户名和密码是否输入正确
            //    进入后台之前或者点击提交按钮之前需要判断用户输入的格式是否正确
            // });
            //  return false不然刷新页面,
            // type="submit" 表示提交form表单数据，然后跳转到新页面
            // console.log(data);
            console.log(data.field);
            //将这些值传递到Java后台
            $.ajax({
                url: '/login',//对应的是Java servlet里面的注解地址
                data: data.field,// 要传递给Java的数据，统一以对象的形式传递{}
                type: 'post',//对应的是servlet里面的方法
                dataType: 'json',//java传递到前端的数据统一格式json
                success: function (res) {// Java后台给前端的返回信息，res就是返回的结果
                    console.log(res);
                    if (res.msg == 'error-code') {
                        layer.msg("表示验证码错误");
                    } else if (res.msg == "error") {
                        layer.msg("用户名或者密码不正确");
                    } else {
                        layer.msg("登录成功", function () {
                            //需要将登录成功的用户名传递到另一个页面
                            //session分为服务端（Java后台）和客户端（前端页面）
                            // localStorage 保存到本地
                            sessionStorage.setItem("loginName", data.field.username);
                            location.href = '/html/index.html';
                        });
                    }
                }
            });
            return false;
        });
        //自定义验证规则
        form.verify({
            // username: function (value) {
            // value="fasd\nfa";
            //     if (value.length < 5 || value.length > 15) {
            //         return '昵称至少得5个字符,不能大于16个字符';
            //     }
            // },
            // username:[/^\w{6,16}$/,'用户名必须是6到16位的字符数字下划线'],
            username: [/^[A-z]\w{5,15}$/, '用户名必须是以字母开头，6到16位的字符数字下划线'],
            pass: [/(.+){6,12}$/, '密码必须6到12位'],

        });
    });
});
// let data=['123456','111111','6666666'];
// for (let i=0;i<10000;i++){
//
// }
//js里面不安全，就是可以通过js拿到页面里面所有的字符
//所以所有安全的数据应该通过服务器传递到前端
//我们这里就是设置图片，拿不到里面的字符
// let code="fasdfa"
//java  怎么创建图片？

// window.alert(111);
// document.write(111)

// var a=1;
// var b=2;
// var c=a+b;
// let d = 1;//变量
// const e = 2;//常量
// console.log(d + e);
// 字符串值，数值，布尔值，数组，对象。
//Java  数据类型  基本类型 和引用类型
// 无论是什么数据类型，都要掌握 取值，赋值
// let a="aaa";
// let b=222;
// let c=true;//布尔
// let d=[];//数组
// let e={};//对象
// //js 是弱语言，会自动根据 字面量的意思来判断当前的变量属于什么数据类型
// function myFunction(p1, p2) {
//     return p1 * p2;              // 该函数返回 p1 和 p2 的乘积
// }
// let car={name:'pors\nche',age:10};
// // car.name='porsche';
// // car.age=10;
// console.log(typeof car);
// let m=1.91357;
// 向上取整
//1  Math.ceil(0.132342)
// 向下取整
// 0   Math.floor(0.432532)
function changeCode() {
    // console.log(1)
    //js 怎么得到随机数？Math.random()
    //js 这里怎么得到时间毫秒数
    // document.getElementById("imgCode").src = "/code?q="+Math.random();
    // 如果前端访问后台，接口地址一致，则浏览器默认在缓存里面取
    //所以，如果每次都想访问同一地址，则添加不同的参数即可
    // console.log(2)
//    需要对输入框设置光标时间（得到焦点）
//     document.getElementById("code").focus();
    $("#imgCode").attr("src", "/code?q=" + Math.random());
    $("#code").focus();
    let aa = Math.random() * 5;
    //js 向上取整向下取整
    // Math.floor(aa);
    // Math.ceil(aa);
    console.log(aa, Math.floor(aa), Math.ceil(aa));

}


